<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // const fn = function () {
        //   console.log(123)
        // }
        // 1. 箭头函数 基本语法
        const fn1 = () => {
            console.log(123)
        }
        fn1()
        // 传参
        const fn2 = (x) => {
            console.log(x)
        }
        fn2(1)
        // 2. 只有一个形参的时候，可以省略小括号
        const fn3 = x => {
            console.log(x)
        }
        fn3(1)
        // 3. 只有一行代码的时候，我们可以省略大括号
        const fn4 = x => console.log(x)
        fn4(6)
        // 4. 只有一行代码的时候，可以省略return
        const fn5 = x => x + x
        console.log(fn5(1))
        // 5. 箭头函数可以直接返回一个对象, 但必须在对象外面加上括号
        const fn6 = (name) => ({ user_name: name })
        console.log(fn6('刘德华'))

        /*==================================  箭头函数参数  ====================================*/
        // 求传入参数的总和
        const getSum = (...args) => {
            let sum = 0
            args.forEach(el => {
                sum += el
            })
            return sum
        }
        const res = getSum(1, 2, 3, 4, 5)
        console.log(res)
    </script>
</body>

</html>